﻿#define _CRT_SECURE_NO_WARNINGS

//#include <stdio.h>
//int main()
//{
//    int a = 5;
//    int b = 8;
//    int c = (a > b);
//    printf("%d\n", c);
//    int d = (a < b);
//    printf("%d\n",d);
//    return 0;
//}
//
//
//
//

//#include <stdio.h>
//int main()
//{
//    int a = 10000;
//    int b = 1000;
//    int c = 100;
//    if (a < b < c)
//    {
//        printf("%s\n","一千大于一万小于一百");
//    }
//    return 0;
//}

//
//它居然真的打印：“一千大于一万小于一百”了，这说明程序认为 if 后面的括号是真！！！
//
//但是这个括号的内容确确实实就是真的！我们来分析一下
//
//在该栗子中，程序先判断 a < b 部分，即 10000 < 1000，这明显是错误的，即，假，在上面我我们说过，
// 在关系表达式中，假的返回值是 0 ，真的返回值是 1 。那么既然是假，这个前半段表达式的值为 0 ，
// 然后，进行后半段表达式的判断，即：0 < 100，那么很明显，这个表达式是正确的，即，真，返回值为 1 ，
// 而if 语句的规则：“如果括号里面的为真，它就会执行大括号的语句”，那么程序执行大括号里的printf函数，
// 最终得出这个错误的结论：“一千大于一万小于一百”。
//
//    因为我们上面的错误是合乎于C语言语法的“合法公民”，所以编译器根本就不会报错。
//
//

//
//​
//if (x == 36)....//本该写成这样，但是不小心，落下一个成了下面这样
//
//if (x = 36)...//这是符合C语言的语法规范的，时“合法公民”，编译器不会报错，这个时候
////我们就可以改变一下书写习惯，这羊就算拉下了，编译器也会提醒我们。
//
////改成这样
//
//if (36 = x）...//
//
//    ​

//
//#include <stdio.h>
//    int main()
//{
//    int a = 10000;
//    int b = 1000;
//    int c = 100;
//    if (10000 = a )
//    {
//        printf("%s\n", "一千大于一万小于一百");
//    }
//    return 0;
//}













//#include <stdio.h>
//    int main()
//{
//    int a = 10000;
//    int b = 1000;
//    int c;
//    scanf("%d %d",&a,&b);
//    c = (a > b ? a : b);
//    printf("%d\n", c);
//    
//    return 0;
//}



//#include <stdio.h>
//    int main()
//{
//    int a = 10000;
//
//    if (0==!a)
//    printf("%s\n", "a weijia");
//    
//    return 0;
//}

​
//#include <stdio.h>
//int main()
//{
//    int a = 10000;
//    int b = 1000;
//    int c = 100;
//    if (a < b && b < c)
//    {
//        printf("%s\n", "一千大于一万小于一百");
//    }
//    return 0;
//}

​
//
//​
//#include <stdio.h>
//int main()
//{
//    int a = 10000;
//    int b = 1000;
//    int c = 100;
//    if (a < b && b < c)
//    {
//        printf("%s\n", "一千大于一万小于一百");
//    }
//    return 0;
//}

​

#include <stdio.h>
int  main()
{
    int a = 10000;
    int b = 1000;
    int c = 100;
    if (a < b && b < c)
    {
        printf("%s\n", "一千大于一万小于一百");
    }
    return 0;
}


